package ae.pcfc.etks.online.web.model;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;

import org.hibernate.validator.constraints.NotEmpty;

import ae.pcfc.etks.online.web.common.Constants;

public class CompanyEmployee implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -6359190960249636006L;

	private Long lUserId;

	public Long getlUserId() {
		return lUserId;
	}

	public void setlUserId(Long lUserId) {
		this.lUserId = lUserId;
	}

	@NotEmpty
	String strPersonNameENG;

	@NotEmpty
	String strPersonNameARB;

	@NotEmpty
	@Size(max = 30)
	String strUserName;

	@NotEmpty
	@Size(max = 30)
	String strPassword;

	@NotEmpty
	@Size(max = 30)
	String strConfirmPassword;

	@NotEmpty
	@Pattern(regexp = Constants.TEL_REGEXP)
	String strMobileNo;

	Long iSecQuestion;

	@NotEmpty
	@Size(max = 30)
	String strSecretAnswer;

	@NotEmpty
	@Pattern(regexp = Constants.MAIL_REGEXP)
	String strEmailAddress;

	String strMobileNotification;

	String strEmailNotification;

	Date applicationDate;
	String strClientType;
	String strStatus;
	String strType;
	Date createDate;
	List<Long> arrServices = new ArrayList<Long>();
	List<Long> arrMatchedServices = new ArrayList<Long>();

	public List<Long> getArrMatchedServices() {
		return arrMatchedServices;
	}

	public void setArrMatchedServices(List<Long> arrMatchedServices) {
		this.arrMatchedServices = arrMatchedServices;
	}

	public String getStrSearchOption() {
		return strSearchOption;
	}

	public void setStrSearchOption(String strSearchOption) {
		this.strSearchOption = strSearchOption;
	}

	public String getStrSearchKey() {
		return strSearchKey;
	}

	public void setStrSearchKey(String strSearchKey) {
		this.strSearchKey = strSearchKey;
	}

	String strSearchOption;
	String strSearchKey;

	public Date getApplicationDate() {
		return applicationDate;
	}

	public void setApplicationDate(Date applicationDate) {
		this.applicationDate = applicationDate;
	}

	public String getStrClientType() {
		return strClientType;
	}

	public void setStrClientType(String strClientType) {
		this.strClientType = strClientType;
	}

	public String getStrStatus() {
		return strStatus;
	}

	public void setStrStatus(String strStatus) {
		this.strStatus = strStatus;
	}

	public String getStrType() {
		return strType;
	}

	public void setStrType(String strType) {
		this.strType = strType;
	}

	public Date getCreateDate() {
		return createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	public List<Long> getArrServices() {
		return arrServices;
	}

	public void setArrServices(List<Long> arrServices) {
		this.arrServices = arrServices;
	}

	/**
	 * @return the strMobileNo
	 */
	public String getStrMobileNo() {
		return strMobileNo;
	}

	/**
	 * @param strMobileNo
	 *            the strMobileNo to set
	 */
	public void setStrMobileNo(String strMobileNo) {
		this.strMobileNo = strMobileNo;
	}

	/**
	 * @return the strUserName
	 */
	public String getStrUserName() {
		return strUserName;
	}

	/**
	 * @param strUserName
	 *            the strUserName to set
	 */
	public void setStrUserName(String strUserName) {
		this.strUserName = strUserName;
	}

	/**
	 * @return the strPassword
	 */
	public String getStrPassword() {
		return strPassword;
	}

	/**
	 * @param strPassword
	 *            the strPassword to set
	 */
	public void setStrPassword(String strPassword) {
		this.strPassword = strPassword;
	}

	/**
	 * @return the strConfirmPassword
	 */
	public String getStrConfirmPassword() {
		return strConfirmPassword;
	}

	/**
	 * @param strConfirmPassword
	 *            the strConfirmPassword to set
	 */
	public void setStrConfirmPassword(String strConfirmPassword) {
		this.strConfirmPassword = strConfirmPassword;
	}

	/**
	 * @return the iSecQuestion
	 */
	public Long getiSecQuestion() {
		return iSecQuestion;
	}

	/**
	 * @param iSecQuestion
	 *            the iSecQuestion to set
	 */
	public void setiSecQuestion(Long iSecQuestion) {
		this.iSecQuestion = iSecQuestion;
	}

	/**
	 * @return the strSecretAnswer
	 */
	public String getStrSecretAnswer() {
		return strSecretAnswer;
	}

	/**
	 * @param strSecretAnswer
	 *            the strSecretAnswer to set
	 */
	public void setStrSecretAnswer(String strSecretAnswer) {
		this.strSecretAnswer = strSecretAnswer;
	}

	/**
	 * @return the strEmailAddress
	 */
	public String getStrEmailAddress() {
		return strEmailAddress;
	}

	/**
	 * @param strEmailAddress
	 *            the strEmailAddress to set
	 */
	public void setStrEmailAddress(String strEmailAddress) {
		this.strEmailAddress = strEmailAddress;
	}

	public String getStrPersonNameENG() {
		return strPersonNameENG;
	}

	public void setStrPersonNameENG(String strPersonNameENG) {
		this.strPersonNameENG = strPersonNameENG;
	}

	public String getStrPersonNameARB() {
		return strPersonNameARB;
	}

	public void setStrPersonNameARB(String strPersonNameARB) {
		this.strPersonNameARB = strPersonNameARB;
	}

	/**
	 * @return the strMobileNotification
	 */
	public String getStrMobileNotification() {
		return strMobileNotification;
	}

	/**
	 * @param strMobileNotification
	 *            the strMobileNotification to set
	 */
	public void setStrMobileNotification(String strMobileNotification) {
		this.strMobileNotification = strMobileNotification;
	}

	/**
	 * @return the strEmailNotification
	 */
	public String getStrEmailNotification() {
		return strEmailNotification;
	}

	/**
	 * @param strEmailNotification
	 *            the strEmailNotification to set
	 */
	public void setStrEmailNotification(String strEmailNotification) {
		this.strEmailNotification = strEmailNotification;
	}

	/**
	 * @return the strUploadURL
	 */

}
